/* Copyright (c) 2010, David Kreuter. See LICENSE for more information */

#ifndef IN_HEADERS_H
#error This file should be included through "headers.h"
#endif

typedef struct _poke_ability{
	char *name;
}poke_ability;

typedef struct _poke_item{
	char *name;
}poke_item;

typedef struct _poke_attack{
	char *name;
	char *desc;
	char *desc_contest;
	uint16 effect;
	uint8 type;
	uint8 category;
	uint8 contest_type;
	uint8 base_power;
	uint8 accuracy;
	uint8 pp;
	uint8 effect_rate;
	uint8 unknown1;
	uint8 unknown2;
}poke_attack;

typedef struct _poke_attack_entry{
	uint8 level;
	uint8 attack;
}poke_attack_entry;

typedef struct _poke_stats{
	uint8 hp;
	uint8 atk;
	uint8 def;
	uint8 spd;
	uint8 sak;
	uint8 sdf;
}poke_stats;

typedef struct _poke{
        char *name;
	char *weight_string;
	char *height_string;
	char *description1;
	char *description2;
	
        uint16 national_nr;
        uint16 sinnoh_nr;
        uint16 weight;
	uint16 height;
	poke_stats base;
	poke_stats effort;
	uint8 type1, type2;
	uint8 female_rate;
	uint8 ability1, ability2; // 1 byte enough?
	uint16 held_item1, held_item2;
	uint8 exp_base;
	uint8 egg_group1, egg_group2;
	uint8 hatch_multi;
	uint8 catch_rate;
	uint8 run_rate;
	uint8 base_happiness;
	uint8 tm[13];
	poke_attack_entry attack[18];
}poke;
